package com.group.domain;

import java.util.Date;

/**
 * 表示系统中的用户。
 */
public class User {
    private int id; // 用户ID
    private String username; // 用户名
    private String password; // 密码
    private String email; // 电子邮件地址
    private String phone; // 手机号码
    private String description; // 用户描述
    private Date registrationDate; // 注册日期
    private boolean role; // 用户角色（0代表普通用户，1代表管理员）
    private boolean isDelete; // 表示用户是否已删除（0代表未删除，1代表已删除）	

    
    /**
     * 构造一个新的User对象。
     */
    public User() {
    	
	}

	/**
     * 构造一个新的User对象。
     *
     * @param id               用户ID
     * @param username         用户名
     * @param password     密码
     * @param email            电子邮件地址
     * @param phone            手机号码
     * @param description      用户描述
     * @param registrationDate 注册日期
     * @param role             用户角色（0代表普通用户，1代表管理员）
     * @param isDelete         表示用户是否已删除（0代表未删除，1代表已删除）
     */
    public User(int id, String username, String password, String email, String phone, String description,
                Date registrationDate, boolean role, boolean isDelete) {
        this.id = id;
        this.username = username;
        this.password = password;
        this.email = email;
        this.phone = phone;
        this.description = description;
        this.registrationDate = registrationDate;
        this.role = role;
        this.isDelete = isDelete;
    }

    /**
     * 返回用户ID。
     *
     * @return 用户ID
     */
    public int getId() {
        return id;
    }

    /**
     * 设置用户ID。
     *
     * @param id 要设置的用户ID
     */
    public void setId(int id) {
        this.id = id;
    }

    /**
     * 返回用户名。
     *
     * @return 用户名
     */
    public String getUsername() {
        return username;
    }

    /**
     * 设置用户名。
     *
     * @param username 要设置的用户名
     */
    public void setUsername(String username) {
        this.username = username;
    }

    /**
     * 返回密码 。
     *
     * @return 密码 
     */
    public String getPassword() {
        return password;
    }

    /**
     * 设置密码 。
     *
     * @param password 要设置的密码 
     */
    public void setPassword(String password) {
        this.password = password;
    }

    /**
     * 返回电子邮件地址。
     *
     * @return 电子邮件地址
     */
    public String getEmail() {
        return email;
    }

    /**
     * 设置电子邮件地址。
     *
     * @param email 要设置的电子邮件地址
     */
    public void setEmail(String email) {
        this.email = email;
    }

    /**
     * 返回手机号码。
     *
     * @return 手机号码
     */
    public String getPhone() {
        return phone;
    }

    /**
     * 设置手机号码。
     *
     * @param phone 要设置的手机号码
     */
    public void setPhone(String phone) {
        this.phone = phone;
    }

    /**
     * 返回用户描述。
     *
     * @return 用户描述
     */
    public String getDescription() {
        return description;
    }

    /**
     * 设置用户描述。
     *
     * @param description 要设置的用户描述
     */
    public void setDescription(String description) {
        this.description = description;
    }

    /**
     * 返回注册日期。
     *
     * @return 注册日期
     */
    public Date getRegistrationDate() {
        return registrationDate;
    }

    /**
     * 设置注册日期。
     *
     * @param registrationDate 要设置的注册日期
     */
    public void setRegistrationDate(Date registrationDate) {
        this.registrationDate = registrationDate;
    }

    /**
     * 返回用户角色。
     *
     * @return 用户角色（true代表管理员，false代表普通用户）
     */
    public boolean getRole() {
        return role;
    }

    /**
     * 设置用户角色。
     *
     * @param role 要设置的用户角色（true代表管理员，false代表普通用户）
     */
    public void setRole(boolean role) {
        this.role = role;
    }

    /**
     * 返回用户是否已删除。
     *
     * @return 如果用户已删除，则返回true；否则返回false
     */
    public boolean getIsDelete() {
        return isDelete;
    }

    /**
     * 设置用户是否已删除。
     *
     * @param delete 如果用户已删除，则为true；否则为false
     */
    public void setIsDelete(boolean delete) {
        isDelete = delete;
    }
}
